package com.jrx.anytxn.transaction.service;


import com.jrx.anytxn.common.exception.TxnBizException;
import com.jrx.anytxn.transaction.entity.AmLoanAccountInfo;
import com.jrx.anytxn.transaction.entity.TlLoanClassifyChange;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 五级分类变动处理接口
 */
public interface ITlLoanClassifyService {

    /**
     * 生成五级分类变动记录(放款，还款调用)
     * @param amLoanAccountInfo
     * @param businessDate
     * @param postAmt
     * @param afterClass
     * @return
     * @throws TxnBizException
     */
    TlLoanClassifyChange buildLoanClassifyChange(AmLoanAccountInfo amLoanAccountInfo, Date businessDate, BigDecimal postAmt,String afterClass) throws TxnBizException;

    /**
     * 生成五级分类变动记录(转入转出批量调用)
     * @param businessDate
     * @param amLoanAccountInfo
     * @param delqMaxDays
     * @param beforeStatus
     * @param afterStatus
     * @return
     * @throws TxnBizException
     */
    TlLoanClassifyChange buildClassifyChange(Date businessDate, AmLoanAccountInfo amLoanAccountInfo,int delqMaxDays,String beforeStatus,String afterStatus) throws TxnBizException;

}
